package com.ruoyi.delivery.service;

import com.ruoyi.delivery.domain.DelOutBoundDetail;

import java.util.List;

/**
 * 出库单明细 服务层
 * @author oasis
 */
public interface IDelOutBoundDetailService {

    /**
     * 根据 exitRecordId 获取所有出库明细
     * @param exitRecordId 出库编号
     * @return 出库明细列表
     */
    List<DelOutBoundDetail> getDetailsByExitRecordId(String exitRecordId);

    /**
     * 插入出库单明细
     * @param detail 出库明细对象
     * @return 是否插入成功
     */
    int insertOutBoundDetail(DelOutBoundDetail detail);

    /**
     * 删除出库单明细
     * @param outBoundDetailNo 出库单明细编号
     * @return 是否删除成功
     */
    int deleteOutBoundDetail(String outBoundDetailNo);

    /**
     * 修改出库单明细
     * @param detail 出库明细对象
     * @return 是否修改成功
     */
    int updateOutBoundDetail(DelOutBoundDetail detail);

    /**
     * 获取出库单明细的总记录数
     * @param exitRecordId 出库编号
     * @return 出库单明细的总记录数
     */
    int getOutBoundDetailCount(String exitRecordId);
}
